import axios from 'axios'

import {message } from 'antd'

import { createBrowserHistory } from 'history'
var history = createBrowserHistory()

var server = axios.create({
    timeout:10*1000,
    baseURL:process.env.REACT_APP_DASE_API, //基准路径
})

// 设置请求拦截器
server.interceptors.request.use((config) => {
    // 携带请求头
    config.headers['Authorization'] = 'Bearer ' + localStorage.getItem('token');
    return config;
}, (err) => {
    return Promise.reject(err);
})

// 设置响应拦截器

server.interceptors.response.use((res) => {
    return res;
}, (err) => {
    //处理错误状态码
    if (err.response.status == 401) {
        message.error('身份认证失败,登陆过期！');
        //删除token
        localStorage.removeItem('token')
        //跳转到登录页 
        history.push('/login')
        history.go()
    } else if (err.response.status == 404) {

        message.error('访问路径有误！');
    } else if (err.response.status == 500) {

        message.error('服务器内部错误！');
    }
    return Promise.reject(err);
})

export default server;